class Api {
  Api._();

  ///用户中心
  ///账号密码登录
  static const String accountLogin = '/frontend/user/login/accountLogin';

  ///获取短信验证码
  static const String msgCode = '/frontend/user/login/getVerifyCode';

  ///验证短信验证码
  static const String checkMsgCode = '/frontend/user/login/checkVerifyCode';

  ///完成注册
  static const String completeRegister = '/frontend/user/login/register';

  ///手机验证码登录
  static const String phoneLogin = '/frontend/user/login/verificationCodeLogin';

  ///获取图形验证码
  static const String getImageCode = '/frontend/verifyCode/getCode';

  ///可以领取的优惠券列表
  static const String canReceiveCouponList = '/frontend/coupon/queryCouponList';

  ///优惠券的数量及类型
  static const String couponReceiveNum = '/frontend/coupon/queryCouponReceiveNum';

  ///我的红包
  static const String queryMyRedPacketList = '/frontend/redPacket/queryMyRedPacketList';

  ///领取红包
  static const String receiveRedPack = '/frontend/redPacket/receiveRedPacket';

  ///红包退款
  static const String redpackRefund = '/frontend/redPacket/refund';

  ///获取可提现金额
  static const String getWithdraw = '/frontend/Account/getWithdraw';

  ///获取可提现配置
  static const String getConfig = '/frontend/Account/getConfig';

  ///发起提现
  static const String applyWithdraw = '/frontend/Account/applyWithdraw';

  ///提现记录
  static const String withdrawList = '/frontend/Account/withdrawList';

  ///余额明细
  static const String withdrawLog = '/frontend/Account/withdrawLog';

  ///忘记密码
  static const String forgetPassword = '/frontend/user/login/forgotPassword';

  ///我的优惠券
  static const String myCouponList = '/frontend/coupon/queryCouponReceiveList';

  ///领取优惠券
  static const String receiveCoupon = '/frontend/coupon/receiveCoupon';

  ///兑换优惠券
  static const String exchangeCoupon = '/frontend/coupon/exchangeCoupon';

  ///兑换红包
  static const String exchangeRedpack = '/frontend/redPacket/exchangeRedPacket';

  ///省市区
  static const String provinceCityArea = '/frontend/Area/getOptions';

  ///新增地址
  static const String addAddress = '/frontend/Address/addAddress';

  ///修改地址
  static const String updateAddress = '/frontend/Address/editAddress';

  ///地址列表
  static const String addressList = '/frontend/Address/getAddress';

  ///删除地址
  static const String deleteAddress = '/frontend/Address/delAddress';

  ///银行卡查询
  static const String bankCardList = '/frontend/bank/getBankList';

  ///新增银行卡
  static const String addBankCard = '/frontend/bank/addBank';

  ///开户行列表
  static const String khhList = '/frontend/bank/getBankOptions';

  ///微信授权登录
  static const String wechatAuthLogin = '/frontend/user/login/weChatLogin';

  ///绑定账号
  static const String bindAccount = '/frontend/user/login/bindingAccount';

  ///获取可用积分
  static const String canUsePoints = '/frontend/userpoints/getpoints';

  ///获取可用预付卡
  static const String canUsePayCard = '/frontend/userpoints/getbdpaycard';

  ///店铺中心
  ///首页装修
  static const String indexDecoration = '/frontend/decoratemicropage/getmainpage';

  ///添加银行卡 - 获取短信验证码
  static const String getBankPhoneCode = '/frontend/bank/getMobileVerifyCode';

  ///删除银行卡
  static const String deleteBankcard = '/frontend/bank/delBank/';

  ///开屏广告
  static const String splashAd = '/frontend/openscreenadv/getinfobysid';

  ///引导页广告
  static const String guideAd = '/frontend/guidpageadv/getinfobysid';

  ///主页弹框广告
  static const String indexPopupAd = '/frontend/popupadv/getmainpage';

  ///微页面弹框广告
  static const String microPopupAd = '/frontend/popupadv/getmicropage';

  ///支付成功弹框广告
  static const String paySuccessPopupAd = '/frontend/popupadv/getpaysuccesspage';

  ///上报弹框广告次数
  static const String reportPopupAd = '/frontend/popupadv/getpaysuccesspage';

  ///退换货原因
  static const String getRefundReason = '/frontend/orderReturn/getRefundReason';

  ///申请售后
  static const String applyReturn = '/frontend/orderReturn/applyReturn';

  /// 准备售后
  static const String applyReturnPrepare = '/frontend/orderReturn/prepare';

  ///售后详情
  static const String afterSalesDetail = '/frontend/order/refund/order/detail';

  ///个性化配置
  static const String modifyRecommendConfig = '/frontend/userInfo/modifyRecommendConfig';

  //抽奖配置
  static const String getRaffle = '/frontend/raffle/queryRaffle';
  //抽奖结果
  static const String getRaffleResult = '/frontend/raffle/queryRaffleWin';
  //抽奖结果
  static const String getRaffleResultList = '/frontend/raffle/queryRaffleRecords';
  //签到列表配置
  static const String getSignInList = '/frontend/sign/userSignIn';
  //签到记录
  static const String getSignInRecord = '/frontend/sign/querySignInRecords';

  ///积分明细
  static const String pointLog = '/frontend/points/logs';

  ///支付方式
  static const String payMethod = '/frontend/payway/getlist';

  ///个性推荐
  static const String recommendList = '/frontend/recommendconfig/getinfo';

  ///会员中心装修
  static const String getmemberpage = '/frontend/decoratememberpage/getmemberpage';

  ///VIP数据
  static const String vipInfo = "/frontend/userInfo/getvipinfo";

  ///获取权益卡卡包
  static const String vipcardList = "/frontend/userEquityCard/list";

  ///获取用户可购买的权益卡列表
  static const String vipCanBuyCardList = "/frontend/userEquityCard/buyist";

  ///获取个用户已有的权益卡
  static const String vipHaveCardList = "/frontend/userEquityCard/havelist";

  ///领取卡
  static const String vipReceiveCard = "/frontend/userEquityCard/receiveCard";

  ///购买卡
  static const String vipBuyCardPlaceCardOrder = "/frontend/order/placeCardOrder";

  ///获取微页面配置
  static const String microConfig = '/frontend/decoratemicropage/getinfo';

  ///获取搜索热词
  static const String hotWord = '/frontend/hotword/getlist';

  ///商品中心
  ///商品分类
  static const String goodsClassify = '/frontend/commodityClass/query/commodityClass/by';

  ///根据分类id查找商品
  static const String goodsById = '/frontend/commodity/group/commodity/list';

  ///获取我的订单列表
  static const String myOrderList = '/frontend/order/query';

  ///确认收货
  static const String receive = '/frontend/order/receive';

  /// 售后确认收货
  static const String orderReturnReceive = '/frontend/orderReturn/receive';

  ///保价顶部查询
  static const String baojiadingbuchaxun = '/frontend/order/insure/price';

  ///订单保价列表
  static const String baojialiebiao = '/frontend/order/query/insure/order';

  ///订单申请记录
  static const String baojiashenqingjilu = '/frontend/order/insure/record';

  ///申请保价
  static const String shenqingbaojia = '/frontend/order/insure';

  ///取消订单
  static const String cancelOrder = '/frontend/order/cancelOrder';

  ///删除订单
  static const String deleteOrder = '/frontend/order/deleteOrder';

  ///我的拼团列表
  static const String groupList = '/frontend/book/getList';

  ///获取评论数量
  static const String getCommentNum = '/frontend/order/query/comment/num';

  ///拼团详情
  static const String groupDetail = '/frontend/book/getDetail';

  ///拼团 参团
  static const String groupJoinDetail = '/frontend/book/joinDetail';

  ///发起砍价
  static const String creatHaggle = '/frontend/haggle/creatHaggle';

  ///砍价列表
  static const String haggleList = '/frontend/haggle/haggleList';

  ///砍价详情
  static const String haggleDetail = '/frontend/haggle/haggleDetail';

  ///获取预付卡列表
  static const String getPrepaymentCardList = '/frontend/bdpaycard/getlist';

  ///绑定预付卡
  static const String addPrepaymentCard = '/frontend/bdpaycard/add';

  ///删除预付卡
  static const String delPrepaymentCard = '/frontend/bdpaycard/delete';

  ///商品详情活动信息
  static const String detailActivity = '/frontend/storeCommodity/activityDetail';

  ///获取营销活动的时间段列表
  static const String todayActivityTimes = '/frontend/marketing/queryTodayActivityTimes';

  ///获取拼团营销活动列表
  static const String bookGoodsList = '/frontend/activity/book/frontendActivityBookGoodsList';

  ///获取秒杀列表
  static const String killSale = '/frontend/activity/seckill/frontendQuerySeckillGoodsList';

  ///获取特价商品列表
  static const String specialGoodsList = '/frontend/special/goods/frontendQuerySpecialGoodsList';

  /// 新品榜单-导航条
  static const String frontendNavigation = '/frontend/special/goods/frontendNavigation';

  ///获取砍价的商品
  static const String bragainingGoodsList = '/frontend/activity/haggle/frontendActivityHaggleGoodsList';

  ///获取预售商品列表
  static const String preSalesGoodsList = '/frontend/activity/presale/frontendActivityPresaleGoodsList';

  ///门店券列表
  static const String getMyStoreVoucher = '/frontend/store/coupon/detail/getMyStoreVoucher';

  ///获取店铺配置和协议
  static const String getStoreConfig = '/frontend/store/getconfig';

  ///兑换门店券
  static const String storeExchange = '/frontend/store/coupon/detail/exchange';

  ///查看可手动领取的红包列表
  static const String queryCanClaimedRedPacketList = '/frontend/red/packet/queryCanClaimedRedPacketList';

  ///获取商品列表
  static const String goodsList = '/frontend/storeCommodity/query/getList';

  ///品牌列表
  static const String brandList = '/frontend/commodityClass/get/brandInfo/list';

  ///商品分类详情
  static const String goodsClassifyDetail = '/frontend/commodityClass/query/commodityClass';

  ///商品详情
  static const String goodsDetail = '/frontend/storeCommodity/query/detail';

  ///购物车列表
  static const String carList = '/frontend/cart/cartList';

  ///加入购物车
  static const String addCar = '/frontend/cart/addCart';

  ///商品评价列表
  static const String goodsCommentList = '/frontend/goods/list/evaluate';

  ///批量选中和取消选中
  static const String toggleSelectAll = '/frontend/cart/chooseMulti';

  ///购物车商品数量
  static const String carGoodsNum = '/frontend/cart/getNumber';

  ///删除购物车商品
  static const String deleteCarGoods = '/frontend/cart/deleteCart';

  ///批量删除购物车商品
  static const String batchDeleteCarGoods = '/frontend/cart/deleteMulti';

  ///品牌详情
  static const String brandDetail = '/frontend/commodityClass/get/brandInfo/detail';

  ///修改购物车商品
  static const String modifyCar = '/frontend/cart/editGoods';

  ///搜索建议
  static const String searchSuggest = '/frontend/storeCommodity/query/searchsuggest';

  ///订单中心
  ///订单详情
  static const String orderDetail = '/frontend/order/detail';

  ///评价
  static const String comment = '/frontend/goods/save/evaluate';

  ///准备下单
  static const String prePlaceOrder = '/frontend/order/prepare';

  ///下单
  static const String placeOrder = '/frontend/order/placeOrder';

  ///订单支付
  static const String payOrder = '/frontend/pay/order';

  ///权益卡购买支付
  static const String payCard = '/frontend/pay/card';
  // ///预下单-预售订单尾款
  static const String prepareFinalPay = '/frontend/order/prepareFinalPay';
  // ///下单-预售订单尾款
  static const String placeOrderFinalPay = '/frontend/order/placeOrderFinalPay';

  ///获取oss的配置
  static const String ossConfig = '/frontend/configchannel/getoss';

  ///实名认证提交
  static const String userAuth = '/frontend/manager/realNameAuthentication';

  ///获取实名认证
  static const String getUserAuth = '/frontend/manager/getRealNameAuthenticationInfo';

  ///获取用户信息
  static const String getUserInfo = '/frontend/userInfo/getUserInfo';

  ///获取个人中心页面的数据
  static const String getMine = '/frontend/userInfo/getMyHomeInfo';

  ///修改个人头像昵称
  static const String updateUserInfo = '/frontend/userInfo/updateUserInfo';

  ///获取修改手机号的验证码
  static const String editMobileVerifyCode = '/frontend/userInfo/editMobileVerifyCode';

  ///验证旧手机的验证码
  static const String checkVerifyCode = '/frontend/userInfo/checkVerifyCode';

  ///获取新手机号的验证码
  static const String editNewMobileVerifyCode = '/frontend/userInfo/editNewMobileVerifyCode';

  ///修改手机号提交
  static const String editMobile = '/frontend/userInfo/editMobile';

  ///修改密码
  static const String editPassword = '/frontend/user/login/editPassword';

  ///获取浏览记录
  static const String getHistory = '/frontend/browsingHistory/getHistory';

  ///删除足迹
  static const String deleteHistory = '/frontend/browsingHistory/deleteHistory';

  ///收藏商品
  static const String collect = '/frontend/storeCommodity/collect';

  ///批量收藏商品
  static const String collectMut = '/frontend/storeCommodity/collectMut';

  ///我的收藏
  static const String getCollectList = '/frontend/storeCommodity/query/getCollectList';

  ///删除收藏
  static const String deleteCollect = '/frontend/storeCommodity/deleteCollect';

  ///批量删除收藏
  static const String deleteCollectMut = '/frontend/storeCommodity/deleteCollectMut';

  ///是否有支付密码
  static const String hasPayPassword = '/frontend/user/login/hasPayPassword';

  ///验证支付密码
  static const String checkPayPassword = '/frontend/user/login/checkPayPassword';

  ///上传物流
  static const String shipping = '/frontend/orderReturn/shipping';

  ///营销中心
  ///最近一场营销活动商品列表
  static const String recentlyMarketingGoodsList = '/frontend/activity/seckill/frontendQueryRecentlySeckillGoodsList';

  ///手动查询营销活动商品列表
  static const String manualMarketingGoodsList = '/frontend/activity/seckill/manualQuerySeckillGoodsList';

  /// 专题商品
  static const String specialTopic = '/frontend/specialtopic/getinfo';

  /// 获取端渠道配置信息
  static const String getDefaultInfo = '/frontend/channelConfig/getDefaultInfo';

  /// 获取装修的红包数据
  static const String automaticGainRedPacketList = '/frontend/red/packet/automaticGainRedPacketList';

  /// 获取装修的优惠券数据
  static const String automaticGainCouponList = '/frontend/coupon/automaticGainCouponList';

  /// 获取百大h5订单url
  static const String bdorderGeturl = '/frontend/bdorder/geturl';

  /// 获取通知列表
  static const String getNoticeList = '/frontend/messagePush/frontendQueryList';

  ///获取接口前缀
  static String getApiPrefix(ApiType type) {
    switch (type) {
      case ApiType.userCenter:
        return '/user-center';
      case ApiType.goodsCenter:
        return '/goods-center';
      case ApiType.marketingCenter:
        return '/marketing-center';
      case ApiType.orderCenter:
        return '/order-center';
      case ApiType.shopCenter:
        return '/shop-center';
      case ApiType.partnerCenter:
        return '/partner-center';
      case ApiType.memberCenter:
        return '';
    }
  }
}

///接口类型
enum ApiType {
  ///用户中心
  userCenter,

  ///商品中心
  goodsCenter,

  ///营销中心
  marketingCenter,

  ///订单中心
  orderCenter,

  ///店铺中心
  shopCenter,

  ///配置和支付中心
  partnerCenter,

  ///会员中心
  memberCenter
}
